package com.lframework.xingyun.basedata.vo.member;

import com.lframework.starter.web.core.components.validation.IsEnum;
import com.lframework.xingyun.basedata.enums.MemberAccountChangeType;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;

@Data
public class CreateMemberAccountLogVo {
    /**
     * 会员id
     */
    @NotNull(message = "会员id不能为空")
    @ApiModelProperty("会员id")
    private String memberId;

    /**
     * 变动类型
     */
    @NotNull(message = "变动类型不能为空")
    @IsEnum(message = "变动类型错误",  enumClass = MemberAccountChangeType.class)
    @ApiModelProperty("变动类型")
    private Integer changeType;

    /**
     * 变动前积分
     */
    @NotNull(message = "变动前积分不能为空")
    @ApiModelProperty("变动前积分")
    private Long beforeScore;

    /**
     * 变动积分
     */
    @NotNull(message = "变动积分不能为空")
    @ApiModelProperty("变动积分")
    private Long changeScore;

    /**
     * 变动后积分
     */
    @NotNull(message = "变动后积分不能为空")
    @ApiModelProperty("变动后积分")
    private Long afterScore;

    /**
     * 变动原因
     */
    @NotNull(message = "变动原因不能为空")
    @ApiModelProperty("变动原因")
    private String reason;

}
